package view;

import model.dominio.Veiculo;
import utilitario.ManipularArquivo;
import utilitario.ValidaException;
import view.prompt.ViewVeiculoPrompt;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import model.dao.DaoVeiculo;
import model.dominio.TipoVeiculo;

/**
 *
 * @author braulio
 */
public class ViewVeiculo {

    public static List<Veiculo> veiculos;

    static {
        veiculos = new ArrayList<Veiculo>();
    }

    public static boolean cadastrarVeiculo(){
        try {
            Veiculo veiculo = ViewVeiculoPrompt.cadastrarVeiculo();
            DaoVeiculo.registrarVeiculo(veiculo);
            return true;
        } catch (IOException ex) {
            Logger.getLogger(ViewVeiculo.class.getName()).log(Level.SEVERE, null, ex);
        }
        return false;
    }
    
public static boolean salvarVeiculo(Veiculo veiculo) throws IOException {
        veiculos.add(veiculo);
        System.out.println("Adicionado à lista!");

            try {
                ManipularArquivo.salvarNoArquivo(veiculo);
            } catch (ValidaException ex) {
                System.out.print(ex.getMessage());
            }

        return true;
    }

    public static void atualizaListaTipos() {
        try {
            ArrayList<String> l = ManipularArquivo.buscarVariosNoArquivo(Veiculo.class.getName());
            for (int i = 0; i < l.size(); i++) {
                veiculos.add(Veiculo.stringToObject(l.get(i)));
            }
        } catch (ValidaException ex) {
            Logger.getLogger(ViewTipoVeiculo.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

     public static void getLista() {
        ViewVeiculoPrompt.getLista();
    }
}
